home *** CD-ROM | disk | FTP | other *** search
-
- /* SP_ChangeSubs.c
- - Functions for controlling ST-Support -
- (c) 1990-94 by Andreas R. Kleinert
- Last changes : 17.07.1994
- */
-
- #include "spobject.h"
-
- ULONG __saveds __asm SPO_SetAccessMode( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __d1 ULONG mode);
- ULONG __saveds __asm SPO_SetWriteSubType( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future);
- ULONG __saveds __asm SPO_SetReadName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *readname, register __a3 APTR future);
- ULONG __saveds __asm SPO_SetWriteName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *writename, register __a3 APTR future);
- ULONG __saveds __asm SPO_SetReqIOWindow( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 struct Window *ReqIOWindow);
- ULONG __saveds __asm SPO_GetSampleBuffer( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 UBYTE **buffer, register __a3 ULONG *buffersize);
- ULONG __saveds __asm SPO_GetSampleInfo( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG *samplesPerSec, register __a3 ULONG *volume, register __d1 APTR future);
-
-
- /* *************************************************** */
- /* * * */
- /* * SPO_SetAccessMode : ... * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_SetAccessMode( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __d1 ULONG mode)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
- ULONG retval = SPERR_NO_ERROR;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- if(mode != SPO_MEDIUM_DISK) retval = SPERR_ACTION_NOT_SUPPORTED;
- else SPObjectHandle->ah_Medium = mode;
-
- return(retval);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_SetWriteType : * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_SetWriteSubType( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- SPObjectHandle->ah_WriteMode = akt_type;
-
- return(SPERR_NO_ERROR);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_SetReadName : * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_SetReadName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *readname, register __a3 APTR future)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- SPObjectHandle->ah_ReadName = readname;
-
- return(SPERR_NO_ERROR);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_SetWriteName : * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_SetWriteName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *writename, register __a3 APTR future)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- SPObjectHandle->ah_WriteName = writename;
-
- return(SPERR_NO_ERROR);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_SetReqIOWindow : ... * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_SetReqIOWindow( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 struct Window *ReqIOWindow)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
- ULONG retval = SPERR_NO_ERROR;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
- if(!ReqIOWindow) return(SPERR_ILLEGAL_ACCESS);
-
- SPObjectHandle->ah_ReqIOWindow = ReqIOWindow;
-
- return(retval);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_GetSampleBuffer : ... * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_GetSampleBuffer( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 UBYTE **buffer, register __a3 ULONG *buffersize)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
- ULONG retval = SPERR_NO_ERROR;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- if(SPObjectHandle->ah_SampleList)
- {
- struct SPO_SampleList *SampleList;
- struct SPO_SampleEntry *entry;
-
- SampleList = SPObjectHandle->ah_SampleList;
-
- if(SampleList->sl_NumEntries)
- {
- entry= (APTR) SampleList->sl_EntryList.lh_Head;
-
- *buffer = entry->se_SampleBuffer;
- *buffersize = entry->se_SampleSize;
-
- }else retval = SPERR_ILLEGAL_ACCESS;
-
- }else retval = SPERR_ILLEGAL_ACCESS;
-
- return(retval);
- }
-
- /* *************************************************** */
- /* * * */
- /* * SPO_GetSampleBuffer : ... * */
- /* * * */
- /* *************************************************** */
-
- ULONG __saveds __asm SPO_GetSampleInfo( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG *samplesPerSec, register __a3 ULONG *volume, register __d1 APTR future)
- {
- struct SPObjectHandle *SPObjectHandle = SPObjectHandle_a1;
- ULONG retval = SPERR_NO_ERROR;
-
- if(!SPObjectHandle) return(SPERR_NO_HANDLE);
-
- if(SPObjectHandle->ah_SampleList)
- {
- struct SPO_SampleList *SampleList;
- struct SPO_SampleEntry *entry;
-
- SampleList = SPObjectHandle->ah_SampleList;
-
- if(SampleList->sl_NumEntries)
- {
- entry= (APTR) SampleList->sl_EntryList.lh_Head;
-
- *samplesPerSec = entry->se_SamplesPerSec;
- *volume = entry->se_Volume;
-
- }else retval = SPERR_ILLEGAL_ACCESS;
-
- }else retval = SPERR_ILLEGAL_ACCESS;
-
- return(retval);
- }
-